In modern computer systems, an input/output (I/O) subsystem enables communication between a central processor and one or more peripheral devices, such as a disk drive, modem, graphics card, keyboard, mouse, sound card or print driver. The I/O subsystem is typically implemented according to a standard I/O specification, such as the parallel bus implementation described in the Peripheral Components Interconnect (PCI) Local Bus Specification, Rev. 2.3, dated Mar. 29, 2002.
In the future, to increase performance and scalability, the parallel bus implementation will likely be replaced by a serial interface implementation, such as the one described in PCI Express Base Specification, Rev. 1.0a, dated Apr. 15, 2003 (hereinafter “PCI Express”). Serial I/O subsystems are composed of serial point-to-point unidirectional or bi-directional packet-switched links between devices (or components) in the computer system.
Although the data rates achievable with serial I/O interfaces are much higher than that achievable with traditional I/O parallel buses, the power required to drive such serial I/O interfaces is significantly higher than that for a parallel bus. In all computer systems, and especially in battery-driven portable computer systems, such as laptop computers, personal digital assistants, wireless or cellular telephones and other such devices, power management is an important factor in determining whether to replace the parallel bus with serial I/O interfaces.
It is therefore desirable to provide for efficient power management in computer systems and devices utilizing serial link connections.